package org.framework.edge.builder.application.assembler;

import org.framework.edge.builder.domain.model.docker.builder.DockerBuilder;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderRemoveCommand;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderStoryCommand;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderUpdateCommand;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderQueryListCommand;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderQueryOneCommand;
import org.framework.edge.builder.application.dto.DockerBuilderDTO;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderExcelExport;
import org.framework.edge.builder.application.command.docker.builder.DockerBuilderExcelImport;
import org.wu.framework.core.mapper.LazyStructMappers;
import org.wu.framework.core.mapper.LazyStructMapper;
/**
 * describe docker 打包 
 *
 * @author Jia wei Wu
 * @date 2025/07/08 06:06 晚上
 * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyAssembler 
 **/
@LazyStructMapper
public interface DockerBuilderDTOAssembler {


    /**
     * describe LazyStructMapper 创建的代理对象
     *
     
     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
    DockerBuilderDTOAssembler INSTANCE = LazyStructMappers.getMapper(DockerBuilderDTOAssembler.class);
    /**
     * describe 应用层存储入参转换成 领域对象
     *
     * @param dockerBuilderStoryCommand 保存docker 打包对象     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderStoryCommand dockerBuilderStoryCommand);
    /**
     * describe 应用层更新入参转换成 领域对象
     *
     * @param dockerBuilderUpdateCommand 更新docker 打包对象     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderUpdateCommand dockerBuilderUpdateCommand);
    /**
     * describe 应用层查询入参转换成 领域对象
     *
     * @param dockerBuilderQueryOneCommand 查询单个docker 打包对象参数     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderQueryOneCommand dockerBuilderQueryOneCommand);
    /**
     * describe 应用层查询入参转换成 领域对象
     *
     * @param dockerBuilderQueryListCommand 查询集合docker 打包对象参数     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderQueryListCommand dockerBuilderQueryListCommand);
    /**
     * describe 应用层删除入参转换成 领域对象
     *
     * @param dockerBuilderRemoveCommand 删除docker 打包对象参数     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderRemoveCommand dockerBuilderRemoveCommand);
    /**
     * describe 持久层领域对象转换成DTO对象
     *
     * @param dockerBuilder docker 打包领域对象     
     * @return {@link DockerBuilderDTO} docker 打包DTO对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilderDTO fromDockerBuilder(DockerBuilder dockerBuilder);
    /**
     * describe 持久层领域对象转换成导出数据对象
     *
     * @param dockerBuilder docker 打包领域对象     
     * @return {@link DockerBuilderExcelExport} docker 打包导出数据对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilderExcelExport fromDockerBuilderToExcelExport(DockerBuilder dockerBuilder);
    /**
     * describe 应用层导入入参转换成 领域对象
     *
     * @param dockerBuilderExcelImport 导入docker 打包对象参数     
     * @return {@link DockerBuilder} docker 打包领域对象     
     
     * @author Jia wei Wu
     * @date 2025/07/08 06:06 晚上
     **/
     DockerBuilder toDockerBuilder(DockerBuilderExcelImport dockerBuilderExcelImport);
}